HTTPD.CONF(5) | httpd.conf | HTTPD.CONF(5) |
NAME¶
httpd.conf - Configuration files for httpd
SYNOPSIS¶
/etc/httpd/conf/httpd.conf, /etc/httpd/conf.modules.d, /etc/httpd/conf.d
DESCRIPTION¶
The main configuration file for the httpd daemon is /etc/httpd/conf/httpd.conf. The syntax of this file is described at https://httpd.apache.org/docs/2.4/configuring.html, and the full set of available directives is listed at https://httpd.apache.org/docs/2.4/mod/directives.html.
Configuration structure¶
The main configuration file (httpd.conf) sets up various defaults and includes configuration files from two directories - /etc/httpd/conf.modules.d and /etc/httpd/conf.d. Packages containing loadable modules (like mod_ssl.so) place files in the conf.modules.d directory with the appropriate LoadModule directive so that module is loaded by default.
Some notable configured defaults are:.
DocumentRoot /var/www/html
Listen 80
ErrorLog "logs/error_log"
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
To remove any of the default configuration provided in separate files covered below, replace that file with an empty file rather than removing it from the filesystem, otherwise it may be restored to the original when the package which provides it is upgraded.
MPM configuration¶
The configuration file at /etc/httpd/conf.modules.d/00-mpm.conf is used to select the multi-processing module (MPM), which governs how httpd divides work between processes and/or threads at run-time. Exactly one LoadModule directive must be uncommented in this file; by default the event MPM is enabled. For more information on MPMs, see https://httpd.apache.org/docs/2.4/mpm.html.
If using the prefork MPM, the "httpd_graceful_shutdown" SELinux boolean should also be enabled, since with this MPM, httpd needs to establish TCP connections to local ports to successfully complete a graceful restart or shutdown. This boolean can be enabled by running the command: semanage boolean -m --on httpd_graceful_shutdown
Module configuration files¶
Module configuration files are provided in the /etc/httpd/conf.modules.d/ directory. Filenames in this directory are by convention prefixed with two digit numeric prefix to ensure they are processed in the desired order. Core modules provide with the httpd package are loaded by files with a 0x- prefix to ensure these are loaded first. Only filenames with a .conf suffix in this directory will be processed.
Other provided configuration files are listed below.
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-optional.conf
/etc/httpd/conf.modules.d/00-systemd.conf
Other configuration files¶
Default module configuration files and site-specific configuration files are loaded from the /etc/httpd/conf.d/ directory. Only files with a .conf suffix will be loaded. The following files are provided:
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.d/ssl.conf (present only if mod_ssl is installed)
Instantiated services¶
As an alternative to (or in addition to) the httpd.service unit, the instantiated template service httpd@.service unit file can be used, which starts httpd using a different configuration file to the default. For example, systemctl start httpd@foobar.service will start httpd using the configuration file /etc/httpd/conf/foobar.conf. See httpd@.service(8) for more information.
FILES¶
/etc/httpd/conf/httpd.conf, /etc/httpd/conf.d, /etc/httpd/conf.modules.d
SEE ALSO¶
httpd(8), httpd.service(8), https://httpd.apache.org/docs/2.4/configuring.html, https://httpd.apache.org/docs/2.4/mod/directives.html
AUTHOR¶
Joe Orton <jorton@redhat.com>
04/29/2024 | httpd |